	.file	1 "b64_decode.c"
	.section .mdebug.abi32
	.previous
	.abicalls
	.rdata
	.align	2
$LC0:
	.ascii	"%s\tError: l\303\255nea %d, caracter %d: %s.\n\000"
	.text
	.align	2
	.globl	decode_log_error
	.ent	decode_log_error
decode_log_error:
	.frame	$fp,56,$ra		# vars= 8, regs= 3/0, args= 24, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,56
	.cprestore 24
	sw	$ra,48($sp)
	sw	$fp,44($sp)
	sw	$gp,40($sp)
	move	$fp,$sp
	sw	$a0,56($fp)
	sw	$a1,60($fp)
	sw	$a2,64($fp)
	sw	$a3,68($fp)
	addu	$a0,$fp,32
	la	$t9,time
	jal	$ra,$t9
	addu	$a0,$fp,32
	la	$t9,localtime
	jal	$ra,$t9
	sw	$v0,36($fp)
	lw	$a0,36($fp)
	la	$t9,asctime
	jal	$ra,$t9
	move	$v1,$v0
	lw	$v0,64($fp)
	sw	$v0,16($sp)
	lw	$v0,68($fp)
	sw	$v0,20($sp)
	lw	$a0,56($fp)
	la	$a1,$LC0
	move	$a2,$v1
	lw	$a3,60($fp)
	la	$t9,fprintf
	jal	$ra,$t9
	move	$sp,$fp
	lw	$ra,48($sp)
	lw	$fp,44($sp)
	addu	$sp,$sp,56
	j	$ra
	.end	decode_log_error
	.size	decode_log_error, .-decode_log_error
	.align	2
	.globl	base64_to_ascii
	.ent	base64_to_ascii
base64_to_ascii:
	.frame	$fp,32,$ra		# vars= 16, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,32
	.cprestore 0
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	move	$v0,$a0
	sb	$v0,8($fp)
	lb	$v0,8($fp)
	slt	$v0,$v0,65
	bne	$v0,$zero,$L19
	lb	$v0,8($fp)
	slt	$v0,$v0,91
	beq	$v0,$zero,$L19
	lbu	$v0,8($fp)
	addu	$v0,$v0,-65
	sll	$v0,$v0,24
	sra	$v0,$v0,24
	sw	$v0,12($fp)
	b	$L18
$L19:
	lb	$v0,8($fp)
	slt	$v0,$v0,97
	bne	$v0,$zero,$L21
	lb	$v0,8($fp)
	slt	$v0,$v0,123
	beq	$v0,$zero,$L21
	lbu	$v0,8($fp)
	addu	$v0,$v0,-71
	sll	$v0,$v0,24
	sra	$v0,$v0,24
	sw	$v0,12($fp)
	b	$L18
$L21:
	lb	$v0,8($fp)
	slt	$v0,$v0,48
	bne	$v0,$zero,$L23
	lb	$v0,8($fp)
	slt	$v0,$v0,58
	beq	$v0,$zero,$L23
	lbu	$v0,8($fp)
	addu	$v0,$v0,4
	sll	$v0,$v0,24
	sra	$v0,$v0,24
	sw	$v0,12($fp)
	b	$L18
$L23:
	lb	$v0,8($fp)
	sw	$v0,16($fp)
	li	$v0,47			# 0x2f
	lw	$v1,16($fp)
	beq	$v1,$v0,$L27
	lw	$v1,16($fp)
	slt	$v0,$v1,48
	beq	$v0,$zero,$L31
	li	$v0,43			# 0x2b
	lw	$v1,16($fp)
	beq	$v1,$v0,$L26
	b	$L20
$L31:
	li	$v0,61			# 0x3d
	lw	$v1,16($fp)
	beq	$v1,$v0,$L28
	b	$L20
$L26:
	li	$v0,62			# 0x3e
	sw	$v0,12($fp)
	b	$L18
$L27:
	li	$v1,63			# 0x3f
	sw	$v1,12($fp)
	b	$L18
$L28:
	sw	$zero,12($fp)
	b	$L18
$L20:
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,12($fp)
$L18:
	lw	$v0,12($fp)
	move	$sp,$fp
	lw	$fp,28($sp)
	addu	$sp,$sp,32
	j	$ra
	.end	base64_to_ascii
	.size	base64_to_ascii, .-base64_to_ascii
	.align	2
	.globl	invert_block_on_little_endian
	.ent	invert_block_on_little_endian
invert_block_on_little_endian:
	.frame	$fp,48,$ra		# vars= 8, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,40($sp)
	sw	$fp,36($sp)
	sw	$gp,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	lw	$v0,48($fp)
	addu	$v0,$v0,3
	lbu	$v0,0($v0)
	sb	$v0,24($fp)
	la	$t9,is_little_endian
	jal	$ra,$t9
	bne	$v0,$zero,$L33
	b	$L32
$L33:
	lw	$v0,48($fp)
	addu	$v1,$v0,3
	lw	$v0,48($fp)
	lbu	$v0,0($v0)
	sb	$v0,0($v1)
	lw	$v1,48($fp)
	lbu	$v0,24($fp)
	sb	$v0,0($v1)
	lw	$v0,48($fp)
	addu	$v0,$v0,2
	lbu	$v0,0($v0)
	sb	$v0,24($fp)
	lw	$v0,48($fp)
	addu	$v1,$v0,2
	lw	$v0,48($fp)
	addu	$v0,$v0,1
	lbu	$v0,0($v0)
	sb	$v0,0($v1)
	lw	$v0,48($fp)
	addu	$v1,$v0,1
	lbu	$v0,24($fp)
	sb	$v0,0($v1)
$L32:
	move	$sp,$fp
	lw	$ra,40($sp)
	lw	$fp,36($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	invert_block_on_little_endian
	.size	invert_block_on_little_endian, .-invert_block_on_little_endian
	.align	2
	.globl	is_little_endian
	.ent	is_little_endian
is_little_endian:
	.frame	$fp,32,$ra		# vars= 16, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,32
	.cprestore 0
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	li	$v0,255			# 0xff
	sw	$v0,8($fp)
	addu	$v0,$fp,8
	sw	$v0,12($fp)
	lw	$v0,12($fp)
	lb	$v0,0($v0)
	beq	$v0,$zero,$L35
	li	$v0,1			# 0x1
	sw	$v0,16($fp)
	b	$L34
$L35:
	sw	$zero,16($fp)
$L34:
	lw	$v0,16($fp)
	move	$sp,$fp
	lw	$fp,28($sp)
	addu	$sp,$sp,32
	j	$ra
	.end	is_little_endian
	.size	is_little_endian, .-is_little_endian
	.align	2
	.globl	decode_block
	.ent	decode_block
decode_block:
	.frame	$fp,72,$ra		# vars= 32, regs= 4/0, args= 16, extra= 8
	.mask	0xd0010000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,72
	.cprestore 16
	sw	$ra,68($sp)
	sw	$fp,64($sp)
	sw	$gp,60($sp)
	sw	$s0,56($sp)
	move	$fp,$sp
	sw	$a0,72($fp)
	sw	$a1,76($fp)
	lw	$v0,72($fp)
	lb	$v1,0($v0)
	li	$v0,61			# 0x3d
	bne	$v1,$v0,$L37
	li	$v0,-3			# 0xfffffffffffffffd
	sw	$v0,52($fp)
	b	$L36
$L37:
	lw	$v0,72($fp)
	addu	$v0,$v0,1
	lb	$v1,0($v0)
	li	$v0,61			# 0x3d
	bne	$v1,$v0,$L38
	li	$v0,-2			# 0xfffffffffffffffe
	sw	$v0,52($fp)
	b	$L36
$L38:
	lw	$v0,72($fp)
	addu	$v0,$v0,2
	lb	$v0,0($v0)
	xori	$v0,$v0,0x3d
	sltu	$v1,$v0,1
	lw	$v0,72($fp)
	addu	$v0,$v0,3
	lb	$v0,0($v0)
	xori	$v0,$v0,0x3d
	sltu	$v0,$zero,$v0
	and	$v0,$v1,$v0
	beq	$v0,$zero,$L39
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,52($fp)
	b	$L36
$L39:
	li	$v0,-67108864			# 0xfffffffffc000000
	sw	$v0,24($fp)
	lw	$a0,76($fp)
	move	$a1,$zero
	li	$a2,4			# 0x4
	la	$t9,memset
	jal	$ra,$t9
	addu	$v0,$fp,40
	sw	$v0,28($fp)
	lw	$v0,76($fp)
	sw	$v0,32($fp)
	sw	$zero,48($fp)
$L40:
	lw	$v0,48($fp)
	slt	$v0,$v0,4
	bne	$v0,$zero,$L43
	b	$L41
$L43:
	addu	$v1,$fp,40
	lw	$v0,48($fp)
	addu	$s0,$v1,$v0
	lw	$v1,72($fp)
	lw	$v0,48($fp)
	addu	$v0,$v1,$v0
	lb	$v0,0($v0)
	move	$a0,$v0
	la	$t9,base64_to_ascii
	jal	$ra,$t9
	sb	$v0,0($s0)
	lw	$v0,48($fp)
	addu	$v0,$v0,1
	sw	$v0,48($fp)
	b	$L40
$L41:
	addu	$v0,$fp,40
	move	$a0,$v0
	la	$t9,invert_block_on_little_endian
	jal	$ra,$t9
	li	$v0,1			# 0x1
	sw	$v0,48($fp)
$L44:
	lw	$v0,48($fp)
	slt	$v0,$v0,5
	bne	$v0,$zero,$L47
	b	$L45
$L47:
	lw	$a2,32($fp)
	lw	$a1,32($fp)
	lw	$a0,28($fp)
	lw	$v0,48($fp)
	sll	$v1,$v0,1
	lw	$v0,0($a0)
	sll	$v1,$v0,$v1
	lw	$v0,24($fp)
	and	$v1,$v1,$v0
	lw	$v0,0($a1)
	or	$v0,$v0,$v1
	sw	$v0,0($a2)
	lw	$v0,24($fp)
	srl	$v0,$v0,6
	sw	$v0,24($fp)
	lw	$v0,48($fp)
	addu	$v0,$v0,1
	sw	$v0,48($fp)
	b	$L44
$L45:
	lw	$a0,76($fp)
	la	$t9,invert_block_on_little_endian
	jal	$ra,$t9
	lw	$v0,72($fp)
	addu	$v0,$v0,2
	lb	$v1,0($v0)
	li	$v0,61			# 0x3d
	bne	$v1,$v0,$L48
	li	$v0,1			# 0x1
	sw	$v0,52($fp)
	b	$L36
$L48:
	lw	$v0,72($fp)
	addu	$v0,$v0,3
	lb	$v1,0($v0)
	li	$v0,61			# 0x3d
	bne	$v1,$v0,$L49
	li	$v0,2			# 0x2
	sw	$v0,52($fp)
	b	$L36
$L49:
	li	$v0,3			# 0x3
	sw	$v0,52($fp)
$L36:
	lw	$v0,52($fp)
	move	$sp,$fp
	lw	$ra,68($sp)
	lw	$fp,64($sp)
	lw	$s0,56($sp)
	addu	$sp,$sp,72
	j	$ra
	.end	decode_block
	.size	decode_block, .-decode_block
	.rdata
	.align	2
$LC1:
	.ascii	"Caracter inv\303\241lido\000"
	.align	2
$LC2:
	.ascii	"Padding antes de fin de archivo\000"
	.align	2
$LC3:
	.ascii	"Padding inv\303\241lido\000"
	.align	2
$LC4:
	.ascii	"Fin de archivo inesperado\000"
	.text
	.align	2
	.globl	decode_file
	.ent	decode_file
decode_file:
	.frame	$fp,80,$ra		# vars= 40, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,80
	.cprestore 16
	sw	$ra,72($sp)
	sw	$fp,68($sp)
	sw	$gp,64($sp)
	move	$fp,$sp
	sw	$a0,80($fp)
	sw	$a1,84($fp)
	sw	$a2,88($fp)
	sw	$zero,24($fp)
	li	$v0,3			# 0x3
	sw	$v0,28($fp)
	li	$v0,1			# 0x1
	sw	$v0,32($fp)
	li	$v0,1			# 0x1
	sw	$v0,36($fp)
$L51:
	addu	$v1,$fp,40
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	move	$a0,$v0
	li	$a1,1			# 0x1
	li	$a2,1			# 0x1
	lw	$a3,80($fp)
	la	$t9,fread
	jal	$ra,$t9
	bne	$v0,$zero,$L53
	b	$L52
$L53:
	addu	$v1,$fp,40
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lb	$v1,0($v0)
	li	$v0,10			# 0xa
	bne	$v1,$v0,$L54
	lw	$v0,32($fp)
	addu	$v0,$v0,1
	sw	$v0,32($fp)
	li	$v0,1			# 0x1
	sw	$v0,36($fp)
	b	$L55
$L54:
	addu	$v1,$fp,40
	lw	$v0,24($fp)
	addu	$v0,$v1,$v0
	lb	$v0,0($v0)
	move	$a0,$v0
	la	$t9,base64_to_ascii
	jal	$ra,$t9
	sb	$v0,56($fp)
	lb	$v1,56($fp)
	li	$v0,-1			# 0xffffffffffffffff
	bne	$v1,$v0,$L56
	lw	$a0,88($fp)
	lw	$a1,32($fp)
	lw	$a2,36($fp)
	la	$a3,$LC1
	la	$t9,decode_log_error
	jal	$ra,$t9
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,60($fp)
	b	$L50
$L56:
	lw	$v1,28($fp)
	li	$v0,3			# 0x3
	beq	$v1,$v0,$L57
	lw	$v1,36($fp)
	lw	$v0,28($fp)
	addu	$v0,$v1,$v0
	addu	$v0,$v0,-3
	lw	$a0,88($fp)
	lw	$a1,32($fp)
	move	$a2,$v0
	la	$a3,$LC2
	la	$t9,decode_log_error
	jal	$ra,$t9
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,60($fp)
	b	$L50
$L57:
	lw	$v0,24($fp)
	addu	$v0,$v0,1
	sw	$v0,24($fp)
	lw	$v0,36($fp)
	addu	$v0,$v0,1
	sw	$v0,36($fp)
$L55:
	lw	$v1,24($fp)
	li	$v0,4			# 0x4
	bne	$v1,$v0,$L51
	addu	$v0,$fp,40
	addu	$v1,$fp,48
	move	$a0,$v0
	move	$a1,$v1
	la	$t9,decode_block
	jal	$ra,$t9
	sw	$v0,28($fp)
	lw	$v0,28($fp)
	bgez	$v0,$L59
	lw	$v1,36($fp)
	lw	$v0,28($fp)
	addu	$v0,$v1,$v0
	addu	$v0,$v0,-1
	lw	$a0,88($fp)
	lw	$a1,32($fp)
	move	$a2,$v0
	la	$a3,$LC3
	la	$t9,decode_log_error
	jal	$ra,$t9
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,60($fp)
	b	$L50
$L59:
	addu	$v0,$fp,48
	move	$a0,$v0
	li	$a1,1			# 0x1
	lw	$a2,28($fp)
	lw	$a3,84($fp)
	la	$t9,fwrite
	jal	$ra,$t9
	sw	$zero,24($fp)
	b	$L51
$L52:
	lw	$v0,24($fp)
	beq	$v0,$zero,$L60
	lw	$a0,88($fp)
	lw	$a1,32($fp)
	lw	$a2,36($fp)
	la	$a3,$LC4
	la	$t9,decode_log_error
	jal	$ra,$t9
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,60($fp)
	b	$L50
$L60:
	sw	$zero,60($fp)
$L50:
	lw	$v0,60($fp)
	move	$sp,$fp
	lw	$ra,72($sp)
	lw	$fp,68($sp)
	addu	$sp,$sp,80
	j	$ra
	.end	decode_file
	.size	decode_file, .-decode_file
	.ident	"GCC: (GNU) 3.3.3 (NetBSD nb3 20040520)"
